Italian update from Pietro Modi
[adiumx.git] / Plugins / Video Chat Interface / AILocalVideoWindowController.m
blobeaa7a0eaf8737b0f9ac242559511d3e42dcd935c
1 /* 
2  * Adium is the legal property of its developers, whose names are listed in the copyright file included
3  * with this source distribution.
4  * 
5  * This program is free software; you can redistribute it and/or modify it under the terms of the GNU
6  * General Public License as published by the Free Software Foundation; either version 2 of the License,
7  * or (at your option) any later version.
8  * 
9  * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
10  * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General
11  * Public License for more details.
12  * 
13  * You should have received a copy of the GNU General Public License along with this program; if not,
14  * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
15  */
17 #import "AILocalVideoWindowController.h"
18 #import <AIUtilities/AIVideoCapture.h>
20 @implementation AILocalVideoWindowController
22 AILocalVideoWindowController    *sharedLocalVideoWindowInstance = nil;
24 + (void)showLocalVideoWindow
26         if (!sharedLocalVideoWindowInstance) {
27                 sharedLocalVideoWindowInstance = [[self alloc] initWithWindowNibName:@"LocalVideoWindow"];
28                 [sharedLocalVideoWindowInstance showWindow:nil];
29         }
33 - (id)initWithWindowNibName:(NSString *)windowNibName
35         [super initWithWindowNibName:windowNibName];
37         //Observe local video
38         localVideo = [[AIVideoCapture alloc] initWithSize:NSMakeSize(320,240)
39                                                                           captureInterval:(1.0/24.0)
40                                                                                          delegate:self];
41         [localVideo beginCapturingVideo];
42         
43         return self;
47 - (void)dealloc
49         [localVideo stopCapturingVideo];
50         [localVideo release];
51         [super dealloc];
54 //Setup the window before it is displayed
55 - (void)windowDidLoad
57         [[self window] setAspectRatio:[[self window] frame].size];
58         [[self window] setBackgroundColor:[NSColor blackColor]];
61 //Close our shared instance
62 - (void)windowWillClose:(id)sender
64         [super windowWillClose:sender];
65         
66         [sharedLocalVideoWindowInstance autorelease];
67         sharedLocalVideoWindowInstance = nil;
70 //Update video frame
71 - (void)videoCapture:(AIVideoCapture *)videoCapture frameReady:(NSImage *)image
73         [videoImageView setImage:image];
76 @end